kubeApiServer="https://$K8_MASTER_HOST:6443"

bootStrapToken=$(cat $K8_CONFIG_HOME/token.csv|awk -F "," 'print $1')
#创建kubelet bootstrap.kubeconfig文件

#设置集群参数.执行该命令将会生成bootstrap.kubeconfig文件
kubectl config set-cluster kubernetes \
    --certificate-authority=$K8_CERT_HOME/kube-ca.pem \
    --embed-certs=true \
    --server=$kubeApiServer \
    --kubeconfig=$K8_CONFIG_HOME/bootstrap.kubeconfig

#设置客户端认证参数,在指定的kubeconfig配置文件中添加users->user->token值
kubectl config set-credentials kubelete-bootstrap \
    --token=${bootStrapToken} \
    --kubeconfig=$K8_CONFIG_HOME/bootstrap.kubeconfig


#设置上下文参数,在指定配置文件中contexts域增加指定属性
kubectl config set-context default \
    --cluster=kubernetes \
    --user=kubelet-bootstrap \
    --kubeconfig=$K8_CONFIG_HOME/bootstrap.kubeconfig


#设置默认上下文.设置谁的默认上下文？kube-apiserver? kubelet ? or kube-controller-manager?
kubectl config use-context default --kubeconfig=$K8_CONFIG_HOME/bootstrap.kubeconfig

   

#创建kube-proxy kubeconfig文件

#设置集群参数.执行该命令将会生成kube-proxy.kubeconfig文件
kubectl config set-cluster kubernetes \
    --certificate-authority=$K8_CERT_HOME/kube-ca.pem \
    --embed-certs=true \
    --server=$kubeApiServer \
    --kubeconfig=$K8_CONFIG_HOME/kube-proxy.kubeconfig

#设置客户端认证参数,在指定的kubeconfig配置文件中添加users->user->token值
kubectl config set-credentials kubelete-bootstrap \
    --client-certificate=$K8_CERT_HOME/kube-proxy.pem \
    --client-key=$K8_CERT_HOME/kube-proxy-key.pem \
    --embed-certs=true \
    --kubeconfig=$K8_CONFIG_HOME/kube-proxy.kubeconfig

#设置上下文参数,在指定配置文件中contexts域增加指定属性
kubectl config set-context default \
    --cluster=kubernetes \
    --user=kube-proxy \
    --kubeconfig=$K8_CONFIG_HOME/kube-proxy.kubeconfig


#设置默认上下文.设置谁的默认上下文？kube-apiserver? kubelet ? or kube-controller-manager?
#该命令会修改配置文件项current-context值为default，其原值为""。
kubectl config use-context default --kubeconfig=$K8_CONFIG_HOME/kube-proxy.kubeconfig

 

